package com.richapp.launcher.database.system.mode;

import com.j256.ormlite.field.DataType;
import com.j256.ormlite.field.DatabaseField;
import com.j256.ormlite.table.DatabaseTable;

@DatabaseTable(tableName = "device")
public class DeviceModel {

    @DatabaseField(generatedId = true)
    private int id;

    @DatabaseField(columnName = "boxCpuId", uniqueCombo = true)    //机顶盒CPU编号
    private String boxCpuId;

    @DatabaseField(columnName = "roomName")    //房间名
    private String roomName;

    @DatabaseField(columnName = "deviceId", uniqueCombo = true)    //设备类型
    private String deviceId;

    @DatabaseField(columnName = "deviceNumber", uniqueCombo = true)    //设备编号
    private String deviceNumber;

    @DatabaseField(columnName = "way", uniqueCombo = true)    //多路开关中的路
    private String way;

    @DatabaseField(columnName = "deviceName", unique = true)    //设备别名
    private String deviceName;

    @DatabaseField(columnName = "deviceStatus")    //当前状态
    private String deviceStatus;

    @DatabaseField(columnName = "onlineStatus")    //在线状态
    private String onlineStatus;

    @DatabaseField(columnName = "busyStatus")    //繁忙状态
    private String busyStatus;

    @DatabaseField(columnName = "lockKeyStatus", defaultValue = "30")
    private String lockKeyStatus;        //锁钥匙状态 30、3F

    @DatabaseField(columnName = "lockedStatus", defaultValue = "20")
    private String lockedStatus;        //反锁状态	20、2F

    @DatabaseField(columnName = "lockTongueStatus", defaultValue = "1F")
    private String lockTongueStatus;        //锁舌状态	1F、10

    @DatabaseField(columnName = "alarmFlag", defaultValue = "false")    //布防状态
    private String alarmFlag;

    @DatabaseField(columnName = "lastAlarmTime", defaultValue = "0")
    private long lastAlarmTime;

    @DatabaseField(columnName = "signal")        //信号质量
    private String signal;

    @DatabaseField(columnName = "power", defaultValue = "0")        //功率
    private String power;

    @DatabaseField(columnName = "ariQuality")    //空气质量
    private int ariQuality;

    @DatabaseField(columnName = "sunLight")        //光照
    private int sunLight;

    @DatabaseField(columnName = "temperature", dataType = DataType.DOUBLE)    //温度
    private double temperature;

    @DatabaseField(columnName = "humidity")        //湿度
    private int humidity;

    @DatabaseField(columnName = "pm25")                //PM2.5
    private int pm25;

    @DatabaseField(columnName = "carbonDioxide")    //二氧化碳
    private String carbonDioxide;

    @DatabaseField(columnName = "monitorState", defaultValue = "false")    //监控状态
    private String monitorState;

    @DatabaseField(columnName = "checkTime")        //校准时间
    private int checkTime;

    @DatabaseField(columnName = "processValue", defaultValue = "0")        //进度值，窗帘
    private int processValue;

    @DatabaseField(columnName = "version")            //版本号
    private String version;

    @DatabaseField(columnName = "ifAnyone",defaultValue = "false")  //是否有人
    private String ifAnyone;

    @DatabaseField(columnName = "powerStatus", defaultValue = "00")        //低功耗设备电量状态
    private String powerStatus;

    public DeviceModel() {

    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getDeviceId() {
        return deviceId;
    }

    public void setDeviceId(String deviceId) {
        this.deviceId = deviceId;
    }

    public String getDeviceNumber() {
        return deviceNumber;
    }

    public void setDeviceNumber(String deviceNumber) {
        this.deviceNumber = deviceNumber;
    }

    public String getDeviceName() {
        return deviceName;
    }

    public void setDeviceName(String deviceName) {
        this.deviceName = deviceName;
    }

    public String getDeviceStatus() {
        return deviceStatus;
    }

    public void setDeviceStatus(String deviceStatus) {
        this.deviceStatus = deviceStatus;
    }

    public String getBoxCpuId() {
        return boxCpuId;
    }

    public String getRoomName() {
        return roomName;
    }

    public void setBoxCpuId(String boxCpuId) {
        this.boxCpuId = boxCpuId;
    }

    public void setRoomName(String roomName) {
        this.roomName = roomName;
    }

    public String getLockKeyStatus() {
        return lockKeyStatus;
    }

    public String getLockedStatus() {
        return lockedStatus;
    }

    public String getLockTongueStatus() {
        return lockTongueStatus;
    }

    public void setLockKeyStatus(String lockKeyStatus) {
        this.lockKeyStatus = lockKeyStatus;
    }

    public void setLockedStatus(String lockedStatus) {
        this.lockedStatus = lockedStatus;
    }

    public void setLockTongueStatus(String lockTongueStatus) {
        this.lockTongueStatus = lockTongueStatus;
    }

    public String getOnlineStatus() {
        return onlineStatus;
    }

    public void setOnlineStatus(String onlineStatus) {
        this.onlineStatus = onlineStatus;
    }

    public String getBusyStatus() {
        return busyStatus;
    }

    public void setBusyStatus(String busyStatus) {
        this.busyStatus = busyStatus;
    }

    public String getAlarmFlag() {
        return alarmFlag;
    }

    public void setAlarmFlag(String alarmFlag) {
        this.alarmFlag = alarmFlag;
    }

    public long getLastAlarmTime() {
        return lastAlarmTime;
    }

    public void setLastAlarmTime(long lastAlarmTime) {
        this.lastAlarmTime = lastAlarmTime;
    }

    public String getSignal() {
        return signal;
    }

    public void setSignal(String signal) {
        this.signal = signal;
    }

    public String getPower() {
        return power;
    }

    public void setPower(String power) {
        this.power = power;
    }

    public String getCarbonDioxide() {
        return carbonDioxide;
    }

    public String getMonitorState() {
        return monitorState;
    }

    public void setMonitorState(String monitorState) {
        this.monitorState = monitorState;
    }

    public int getCheckTime() {
        return checkTime;
    }

    public void setCheckTime(int checkTime) {
        this.checkTime = checkTime;
    }

    public void setCarbonDioxide(String carbonDioxide) {
        this.carbonDioxide = carbonDioxide;
    }


    public String getVersion() {
        return version;
    }

    public void setVersion(String version) {
        this.version = version;
    }

    public String getWay() {
        return way;
    }

    public void setWay(String way) {
        this.way = way;
    }

    public int getProcessValue() {
        return processValue;
    }

    public void setProcessValue(int processValue) {
        this.processValue = processValue;
    }

    public int getAriQuality() {
        return ariQuality;
    }

    public void setAriQuality(int ariQuality) {
        this.ariQuality = ariQuality;
    }

    public int getSunLight() {
        return sunLight;
    }

    public void setSunLight(int sunLight) {
        this.sunLight = sunLight;
    }

    public double getTemperature() {
        return temperature;
    }

    public void setTemperature(double temperature) {
        this.temperature = temperature;
    }

    public int getHumidity() {
        return humidity;
    }

    public void setHumidity(int humidity) {
        this.humidity = humidity;
    }

    public int getPm25() {
        return pm25;
    }

    public void setPm25(int pm25) {
        this.pm25 = pm25;
    }

    public String getIfAnyone() {
        return ifAnyone;
    }

    public void setIfAnyone(String ifAnyone) {
        this.ifAnyone = ifAnyone;
    }

    public String getPowerStatus() {
        return powerStatus;
    }

    public void setPowerStatus(String powerStatus) {
        this.powerStatus = powerStatus;
    }

    @Override
    public String toString() {
        return "DeviceModel{" +
                "id=" + id +
                ", boxCpuId='" + boxCpuId + '\'' +
                ", roomName='" + roomName + '\'' +
                ", deviceId='" + deviceId + '\'' +
                ", deviceNumber='" + deviceNumber + '\'' +
                ", way='" + way + '\'' +
                ", deviceName='" + deviceName + '\'' +
                ", deviceStatus='" + deviceStatus + '\'' +
                ", onlineStatus='" + onlineStatus + '\'' +
                ", busyStatus='" + busyStatus + '\'' +
                ", lockKeyStatus='" + lockKeyStatus + '\'' +
                ", lockedStatus='" + lockedStatus + '\'' +
                ", lockTongueStatus='" + lockTongueStatus + '\'' +
                ", alarmFlag='" + alarmFlag + '\'' +
                ", lastAlarmTime=" + lastAlarmTime +
                ", signal='" + signal + '\'' +
                ", power='" + power + '\'' +
                ", ariQuality=" + ariQuality +
                ", sunLight=" + sunLight +
                ", temperature=" + temperature +
                ", humidity=" + humidity +
                ", pm25=" + pm25 +
                ", carbonDioxide='" + carbonDioxide + '\'' +
                ", monitorState='" + monitorState + '\'' +
                ", checkTime=" + checkTime +
                ", processValue=" + processValue +
                ", version='" + version + '\'' +
                ", ifAnyone='" + ifAnyone + '\'' +
                ", powerStatus='" + powerStatus + '\'' +
                '}';
    }
}
